home *** CD-ROM | disk | FTP | other *** search
/ Disc to the Future 2 / Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin / MAC / THINKC / 4_0 / TIFF_WIN / ABOUT_BO.C next >
C/C++ Source or Header  |  1990-01-24  |  1KB  |  48 lines

  1. #include "my color.h"
  2. pascal Boolean MyModalFilter(DialogPtr,EventRecord *,short *);
  3.  
  4. DoAboutBox()
  5.  
  6. {
  7.     short        itemHit;
  8. WindowPtr    myWindow;
  9.  
  10.     myWindow = GetNewDialog(ABOUT_BOX, nil, (WindowPtr) -1);
  11.     do    
  12.     {
  13.         ModalDialog (MyModalFilter, &itemHit); 
  14.         
  15.     }
  16.     while (itemHit != 1);
  17.     DisposDialog (myWindow);
  18. } /*DoAboutBox*/
  19.      
  20. /*     function MyFilter (theDialog: DialogPtr; var theEvent: EventRecord;*/
  21. /*            var itemHit: Integer): Boolean; */
  22.  
  23. pascal Boolean MyModalFilter(theDialog,theEvent,itemHit)
  24. DialogPtr    theDialog;
  25. EventRecord    *theEvent;
  26. short        *itemHit;
  27.  
  28. {
  29.     short        theType;
  30.     Handle    theItem;
  31.     Rect        theBox;
  32.     long        finalTicks;
  33.     
  34.     if (((theEvent->message & charCodeMask) == 13) || /*carriage return*/
  35.     ((theEvent->message & charCodeMask) == 3)) /*enter*/
  36.     {
  37.         GetDItem (theDialog, 1, &theType, &theItem, &theBox);
  38.         HiliteControl((ControlHandle)theItem, 1);
  39.         Delay(8, &finalTicks);
  40.         HiliteControl((ControlHandle)theItem, 0);
  41.         *itemHit = 1;
  42.         return(true);
  43.     }   /*if BitAnd...*/
  44.     else 
  45.         return(false);
  46. }  /* MyModalFilter */
  47.  
  48.